from pyspark import SparkConf, SparkContext

if __name__ == '__main__':
    conf = SparkConf().setAppName("test").setMaster("local[*]")
    sc = SparkContext(conf=conf)

    # 通过并行化集合的方式创建RDD，本地集合 -> 分布式对象（RDD）
    rdd = sc.parallelize([1, 2, 3, 4, 5, 6, 7, 8, 9])
    # 没有给定分区数，默认分区数是多少？根据CPU核心来定
    print("默认分区数", rdd.getNumPartitions())

    rdd = sc.parallelize([1, 2, 3], 3)
    print("分区数", rdd.getNumPartitions())

    # 将RDD（分布式对象）中每个分区的数据，都发送到Driver中，形成一个Python List对象
    # 分布式 -> 本地集合
    print("rdd的内容是：", rdd.collect())
